package us.proyecto.canarios.actions.concursos;

import java.io.IOException;
import java.io.InputStream;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Set;

import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;
import jxl.write.WritableCell;

import org.ajax4jsf.exception.FileUploadException;
import org.jboss.seam.ScopeType;
import org.jboss.seam.annotations.Begin;
import org.jboss.seam.annotations.FlushModeType;
import org.jboss.seam.annotations.In;
import org.jboss.seam.annotations.Logger;
import org.jboss.seam.annotations.Name;
import org.jboss.seam.annotations.Scope;
import org.jboss.seam.annotations.datamodel.DataModel;
import org.jboss.seam.annotations.datamodel.DataModelSelectionIndex;
import org.jboss.seam.faces.FacesMessages;
import org.jboss.seam.log.Log;
import org.richfaces.component.html.HtmlTree;
import org.richfaces.event.NodeSelectedEvent;
import org.richfaces.model.TreeNode;

import us.proyecto.canarios.actions.admin.AutenticacionAction;
import us.proyecto.canarios.actions.usuarios.ConsultaUsuarioAction;
import us.proyecto.canarios.dao.ConcursoDAO;
import us.proyecto.canarios.dao.DiccionarioDAO;
import us.proyecto.canarios.dao.PajarosDAO;
import us.proyecto.canarios.dao.UsuarioDAO;
import us.proyecto.canarios.domain.Asociacion;
import us.proyecto.canarios.domain.Concurso;
import us.proyecto.canarios.domain.Criador;
import us.proyecto.canarios.domain.Incidencia;
import us.proyecto.canarios.domain.Pajaro;
import us.proyecto.canarios.domain.Premio;
import us.proyecto.canarios.domain.Puntuacion;
import us.proyecto.canarios.domain.Tipo;
import us.proyecto.canarios.domain.Usuario;

@Name("evaluarCanario")
@Scope(ScopeType.SESSION)
public class EvaluarCanarioAction {

	@Logger
	Log log;

	private Puntuacion puntuacion;

	private List<Premio> listaPremios;

	@In(create = true)
	private DiccionarioDAO diccionariosDAO;

	@In(create = true)
	private PajarosDAO pajarosDAO;

	@In(create = true)
	private GestionCanarioJuezAction gestionCanarioJuez;

	private boolean consulta = false;


	@Begin(join = true, flushMode=FlushModeType.MANUAL)
	public void selectPajaro(Puntuacion pun){
		puntuacion = pun;
		consulta = gestionCanarioJuez.getConsulta();
		listaPremios = diccionariosDAO.getListaPremiosTipo(puntuacion.getPajaro().getTipo());

	}


	public Puntuacion getPuntuacion() {
		return puntuacion;
	}


	public void setPuntuacion(Puntuacion puntuacion) {
		this.puntuacion = puntuacion;
	}


	public List<Premio> getListaPremios() {
		return listaPremios;
	}


	public void setListaPremios(List<Premio> listaPremios) {
		this.listaPremios = listaPremios;
	}

	public void guardar(){
		pajarosDAO.update(puntuacion.getPajaro());
		FacesMessages.instance().add("Evaluación guardada correctamente");
	}


	public void descalificar(){
		puntuacion.setPremio(null);
	}


	public boolean isConsulta() {
		return consulta;
	}


	public void setConsulta(boolean consulta) {
		this.consulta = consulta;
	}
	public void vacio(){}


}
